




<!doctype html public "-//IETF//DTD HTML//EN">
<html>

<head>

<title>
CPS710
Assignment 2
</title>

<LINK REL=StyleSheet HREF="/~cps710/CSS/h.css" TYPE="text/css" MEDIA=screen>
<LINK REL=StyleSheet HREF="/~cps710/CSS/main.css" TYPE="text/css" MEDIA=screen>
<LINK REL=StyleSheet HREF="/~cps710/CSS/theme.css" TYPE="text/css" MEDIA=screen>

</head>




<body>

<center> <table noborder width=100%>

<tr>

<td align=left valign=top width=125>
<h1><a href="/~cps710/" target="_top" class="NOUNDERLINE"> CPS710 </a></h1>
</td>

<td align=center valign=top>
<h1>

Assignment 2
</h1>

<td align=center valign=top width=125>
<a href="http://www.ryerson.ca"
	onmouseover="parent.window.status='General Information about Ryerson'; return true" >
	<IMG SRC="/~cps710/Pictures/Ryerson2linesMedium.gif" ALT="Ryerson University" border=0></a>
	</a>

</tr>

<tr>
<td align=center valign=top width=125>

</td>

<td align="center" valign="top">

<h2>Parser</h2>


</td>

<td align=center valign=top width=125>

<h4>Due: November 9</h4>

</td>



</tr></table></center>

<hr>


<h3>Objectives</h3>
In this course you will be developing an interpreter for a high-level
language, called HL, which manipulates sets and strings.
<p>
In this assignment you will be using JavaCC and JJTree
to build HL's parser.
<p>
This should familiarize you with the use of compiler generators
and the LL(1) parsing process.

<h3>Assignment</h3>

<ul>

<h5><a href="part1.shtml">Part 1 - Grammar Manipulation</a></h5>

<h5><a href="part2.shtml">Part 2 - Language Recognition</a></h5>

<h5><a href="part3.shtml">Part 3 - Syntax Error Management</a></h5>

<h5><a href="part4.shtml">Part 4 - Syntax Tree Generation</a></h5>

</ul>

<h3>Testing the assignment</h3>
Please check the 
<a href="Test">Assignment 2 Test Page</a>
for a description of how your assignment will be tested and marked.

<h3>How to submit the assignment</h3>
<ul>

<P><li>Prepare a test file called testerror.hl which contains 2 statements
or expressions (i.e the start production should be called twice).
Each of these 2 statements (or expressions) should contain 5 of the
10 errors for which you have implemented some error recovery.
Altogether this should demonstrate your 10 error recoveries as
described in <a href="part3.shtml">Part 3</a> of the assignment.  
<p><li>Zip up together Parser.jjt and testerror.hl into A2.zip
<ul>
<li>If you worked on the bonus mark, please also zip your NumberToken.java into A2.zip.
<li>If you have modified any other .java files, also include them in A2.zip 
with the proper directory structure.
</ul>
Make sure that the test scripts described in the 
<a href="Test">Assignment 2 Test Page</a> works with no modifications.

<p><li><a href="../submission.shtml">Submit electronically</a> A2.zip
<p><li>Print, fill out, and hand in the 3-page marking sheet (
<a href="markingA2.doc">word format</a>
or
<a href="markingA2.pdf">pdf format</a>
).
Don't forget to fill out the third page of this marking sheet
as it contains intructions for testing your error recovery.
</ul>


<p><hr>
<center>

This page is maintained by
Sophie Quigley
(<a href="mailto:cps710@scs.ryerson.ca">cps710@scs.ryerson.ca</a>)


<br>
Last modified 
Monday, 06-Nov-2006 16:43:23 EST

</center>

</body>
</html>




